package main

import (
	"fmt"
	"reflect"
)

func main() {

	names := [3]string{"baim0", "zhaokunhao", "hasagei"}
	fmt.Println(names)
	//1、索引操作
	fmt.Println(names[1])
	names[2] = "nibaba"
	fmt.Println(names)

	//2、切片操作 [start,end] 顾头不顾尾,就是取一段切片 没有长度的

	s1 := names[1:2]
	fmt.Println(s1, reflect.TypeOf(s1))

	s2 := names[1:]
	fmt.Println(s2, reflect.TypeOf(s2))

	s3 := names[:2]
	fmt.Println(s3, reflect.TypeOf(s3))

	// 3、遍历数组
	// 3.1  3要素遍历
	for i := 0; i < len(names); i++ {
		fmt.Println(names[i])
	}
	// 3.2  range遍历
	for k, v := range names {
		fmt.Println(k, v) // k为索引v为值
	}
	for _, v := range names {
		fmt.Println(v) // 如果不要就用匿名变量接收
	}
}
